package Utils.converters;

import java.util.Date;

/**
 * 工具类
 *
 * @author d11yu
 */
public class MyUtils {
    /**
     * 获取对象obj的数据类型。如果不属于DataType中的类型，则返回null。
     *
     * @param obj
     * @return
     */
    public static DataType getDataType(Object obj) {
        try {
            if (obj instanceof Integer || obj instanceof Long) {
                return DataType.INT;
            }
            if (obj instanceof Double || obj instanceof Float) {
                return DataType.DOUBLE;
            }
            if (obj instanceof String) {
                return DataType.STRING;
            }
            if (obj instanceof Date) {
                return DataType.DATE_UTIL;
            }
            if (obj instanceof java.sql.Date) {
                return DataType.DATE_SQL;
            }
        } catch (Exception e) {
            if (Integer.class.isInstance(obj) || Long.class.isInstance(obj)) {
                return DataType.INT;
            }
            if (Double.class.isInstance(obj) || Float.class.isInstance(obj)) {
                return DataType.DOUBLE;
            }
            if (Boolean.class.isInstance(obj)) {
                return DataType.BOOLEAN;
            }
        }
        return null;
    }


}
